#pragma once

#include "UIWindow.h"


class COOLUI_CLASS CUIWindowBase : public CUIWindow
{
public:
    CUIWindowBase( HWND hWnd );

    virtual ~CUIWindowBase();

    HWND GetHwnd();

// 	void GetWindowRect(CUIRect* pRect);
//
// 	void GetClientRect(CUIRect* pRect);

    DWORD GetStyle();

    DWORD GetExStyle();

    BOOL IsSkined();

    BOOL IsChild();

    void SaveOldWindowProc( WNDPROC NewWndProc );

    WNDPROC GetOldWindowProc();

    LRESULT ProcessUIMsg( UINT uMsg, WPARAM wParam, LPARAM lParam );

    LRESULT DefaultWindowProc( UINT uMsg, WPARAM wParam, LPARAM lParam );

private:

    WNDPROC m_OldWndProc;

    HWND m_hWnd;

    BOOL m_bSkined;
};